スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
このエントリーをはてなブックマークに追加

[iOS]CoreDataにautoincrementされるidを付加する

Attributeにあらかじめ「id(Integer)」を用意しておいてください。
データを追加する度にidが自動で設定されます。
lastInsertIDメソッドで最後に追加したIDの値が取得できます。
[iOS]CoreDataの取得したデータをソートする_1

//ChildInfo.h
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>

@class MotherInfo;

NS_ASSUME_NONNULL_BEGIN

@interface ChildInfo : NSManagedObject

// Insert code here to declare functionality of your managed object subclass
- (NSInteger)lastInsertID;

@end

NS_ASSUME_NONNULL_END

#import "ChildInfo+CoreDataProperties.h"


//ChildInfo.m
#import "ChildInfo.h"

@implementation ChildInfo

- (void)awakeFromInsert {
[super awakeFromInsert];

self.id = [NSNumber numberWithInteger:[self __getMaxID]+1];
}

- (NSInteger)__getMaxID {
if(!self.managedObjectContext)return NSNotFound;
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] initWithEntityName:self.entity.name];

fetchRequest.fetchLimit = 1;
fetchRequest.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"id" ascending:NO]];

NSError *error = nil;

ChildInfo *firstData = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error].firstObject;

return [firstData.id integerValue];
}

- (NSInteger)lastInsertID {
return [self __getMaxID];
}

@end
このエントリーをはてなブックマークに追加

[iOS]CoreDataの取得したデータをソートする

ソートはfetch時の指定以外にも可能です。
取得したデータの「order」値に対して昇順ソートを指定します。
CoreData(画像添付)
[iOS]CoreDataの取得したデータをソートする_1

//このデータはMotherInfoのリレーションシップで一緒に取得したChildInfoデータに対して行いました。
NSArray *childInfos = motherInfo.child_infos.allObjects;
NSSortDescriptor *sortNameDescriptor = [[NSSortDescriptor alloc] initWithKey:@"order" ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortNameDescriptor, nil];
NSArray *childInfos_sorted = [childInfos sortedArrayUsingDescriptors:sortDescriptors];


参考URL:Sorting toMany relationship Set in core data
このエントリーをはてなブックマークに追加

[FFMpeg] コマンド解説 (未完成)

-y (global)
確認せずに出力ファイルを上書きします。

-b bitrate (推奨コマンド:-b:v)
映像のビットレート

-ab bitrate (推奨コマンド:-b:a)
オーディオのビットレート

-r rate
フレームレートの指定(単位はHz、分数または省略形)

-ar rate
サンプリングレート(単位はHz、default = 44100 Hz)

-profile:v profile -level:v level
H.264の設定がこの2つのオプションで決まるらしい。(リンク先を参照)
リンク先の最適解の例は下記2パターン
//iPhone 3GSみたいな古い端末をサポートする: Baseline Profile @ Level 3.0
-profile:v baseline -level:v 3.0
//iPhone 4以降に絞ってしてしまう: Baseline Profile @ Level 3.1
-profile:v baseline -level:v 3.1

-ac channels
オーディオのチャンネル(1がモノラル、2がステレオ。default = 1) 参考リンク

-vcodec codec
強制的に「codec」で書き出し

-acodec codec
強制的に「codec」で書き出し
このエントリーをはてなブックマークに追加

[C#]パソコン上のサービス情報を全部コンソールに出力する

//パソコン上のサービス情報を全部コンソールに出力
public void PrintServices()
{
Console.WriteLine(">>>>> サービス情報の出力を開始します。");
ServiceController[] scs = ServiceController.GetDevices();
int i=0;
foreach (ServiceController sc in scs)
{
Console.WriteLine("Device["+(i++)+"]");
Console.WriteLine(" DisplayName : " + sc.DisplayName);
Console.WriteLine(" ServiceName : " + sc.ServiceName);
switch (sc.ServiceType)
{
case ServiceType.Adapter:
Console.WriteLine(" ServiceType : Adapter");
break;
case ServiceType.FileSystemDriver:
Console.WriteLine(" ServiceType : FileSystemDriver");
break;
case ServiceType.InteractiveProcess:
Console.WriteLine(" ServiceType : InteractiveProcess");
break;
case ServiceType.KernelDriver:
Console.WriteLine(" ServiceType : KernelDriver");
break;
case ServiceType.RecognizerDriver:
Console.WriteLine(" ServiceType : RecognizerDriver");
break;
case ServiceType.Win32OwnProcess:
Console.WriteLine(" ServiceType : Win32OwnProcess");
break;
case ServiceType.Win32ShareProcess:
Console.WriteLine(" ServiceType : Win32ShareProcess");
break;
default:
Console.WriteLine(" ServiceType : Unknown");
break;
}
switch (sc.Status)
{
case ServiceControllerStatus.ContinuePending:
Console.WriteLine(" Status : ContinuePending");
break;
case ServiceControllerStatus.Paused:
Console.WriteLine(" Status : Paused");
break;
case ServiceControllerStatus.PausePending:
Console.WriteLine(" Status : PausePending");
break;
case ServiceControllerStatus.Running:
Console.WriteLine(" Status : Running");
break;
case ServiceControllerStatus.StartPending:
Console.WriteLine(" Status : StartPending");
break;
case ServiceControllerStatus.Stopped:
Console.WriteLine(" Status : Stopped");
break;
case ServiceControllerStatus.StopPending:
Console.WriteLine(" Status : StopPending");
break;
default:
Console.WriteLine(" Status : Unknown");
break;
}

}
Console.WriteLine("完了 <<<<<");
}



参考URL:接続されてるデバイスを取得する
このエントリーをはてなブックマークに追加

Internal error: filemng failed: filemng: opendir failed: Permission denied System error 13: Permission denied

パーミッションを「chown -R」でまとめていじっているとPlesk環境ごとパーミッションを弄ってしまって下画像のようになってしまった場合の解決策の話です。
Internal error: filemng failed: filemng: opendir failed: Permission denied System error 13: Permission denied_1

その場合は、Pleskが事前にリペア手段を用意しています。

Pleskバージョンごとに違いますが、わたしはPlesk12だったので下記コマンド1行でした。
# /usr/local/psa/bin/repair --restore-vhosts-permissions



参考URL1:System error 13: Permission denied during access to domain logs in Plesk 11.5 for Linux.
参考URL2:[How to] How to restore default permissions in the virtual host directory
参考URL3:[手順] 仮想ホストディレクトリのデフォルトパーミッションを復元するには
このエントリーをはてなブックマークに追加
Translation


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。
プロフィール

チーズくん

Author:チーズくん
個人的メモをただ羅列しています。
twitter:@cheese1038

バロメーター
最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。